package com.hxt.util;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.UUID;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;

import javax.crypto.Cipher;
import javax.crypto.CipherInputStream;
import javax.crypto.CipherOutputStream;
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;
import javax.crypto.spec.IvParameterSpec;

public class DESUtil {
    public static final String ENCRYPT_TYPE = "DES";

    public static final String INSTANCE_TYPE = "DES/CBC/PKCS5Padding";

    public static final String CHARSET = "UTF-8";
    /**
     * 取密码的位置规则
     */
    private static final int[] POS_RULE = new int[] { 0, 9, 14, 19, 24, 25, 26,
            27 };

    public static String getUUID() {
        UUID uuid = UUID.randomUUID();
        return uuid.toString();
    }

    public static String parseUUID(String uuid) {
        try {
            UUID.fromString(uuid);
        }
        catch (IllegalArgumentException e) {
            e.printStackTrace();
            return null;
        }
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < POS_RULE.length; i++) {
            sb.append(uuid.charAt(POS_RULE[i]));
        }
        return sb.toString();
    }

    public static byte[] encrypt(byte[] obytes, String keyStr) {
        byte[] bytes = null;
        ByteArrayInputStream bis = null;
        CipherInputStream cis = null;
        ByteArrayOutputStream bos = null;
        try {
            Cipher cipher = Cipher.getInstance(INSTANCE_TYPE);
            DESKeySpec desKeySpec = new DESKeySpec(keyStr.getBytes(CHARSET));
            SecretKeyFactory keyFactory = SecretKeyFactory
                    .getInstance(ENCRYPT_TYPE);
            SecretKey secretKey = keyFactory.generateSecret(desKeySpec);
            IvParameterSpec iv = new IvParameterSpec(keyStr.getBytes(CHARSET));
            cipher.init(Cipher.ENCRYPT_MODE, secretKey, iv);
            bis = new ByteArrayInputStream(obytes);
            bos = new ByteArrayOutputStream();
            cis = new CipherInputStream(bis, cipher);
            byte[] buffer = new byte[1024];
            int r;
            while ((r = cis.read(buffer)) > 0) {
                bos.write(buffer, 0, r);
            }
            bytes = bos.toByteArray();
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        finally {
            if (cis != null) {
                try {
                    cis.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bos != null) {
                try {
                    bos.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bis != null) {
                try {
                    bis.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return bytes;
    }

    public static byte[] compress(byte[] obytes) {
        byte[] bytes = null;
        ByteArrayInputStream bis = null;
        ByteArrayOutputStream bos = null;
        GZIPOutputStream gos = null;
        try {
            bis = new ByteArrayInputStream(obytes);
            bos = new ByteArrayOutputStream();
            gos = new GZIPOutputStream(bos);
            byte[] buffer = new byte[1024];
            int r;
            while ((r = bis.read(buffer)) > 0) {
                gos.write(buffer, 0, r);
            }
            // 调用完成，在这里是必须的，不然bos的长度不完整。如果不这么写，要先关闭gos，再调用bos.toByteArray方法。
            gos.finish();
            bytes = bos.toByteArray();
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        finally {
            if (gos != null) {
                try {
                    gos.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bos != null) {
                try {
                    bos.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bis != null) {
                try {
                    bis.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return bytes;
    }

    public static byte[] decompress(byte[] obytes) {
        byte[] bytes = null;
        ByteArrayInputStream bis = null;
        ByteArrayOutputStream bos = null;
        GZIPInputStream gis = null;
        try {
            bis = new ByteArrayInputStream(obytes);
            bos = new ByteArrayOutputStream();
            gis = new GZIPInputStream(bis);
            byte[] buffer = new byte[1024];
            int r;
            while ((r = gis.read(buffer)) > 0) {
                bos.write(buffer, 0, r);
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        finally {
            if (gis != null) {
                try {
                    gis.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bos != null) {
                try {
                    bos.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bis != null) {
                try {
                    bis.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        bytes = bos.toByteArray();
        return bytes;
    }

    public static byte[] decrypt(byte[] obytes, String keyStr) {
        byte[] bytes = null;
        ByteArrayInputStream bis = null;
        CipherOutputStream cos = null;
        ByteArrayOutputStream bos = null;
        try {
            Cipher cipher = Cipher.getInstance(INSTANCE_TYPE);
            DESKeySpec desKeySpec = new DESKeySpec(keyStr.getBytes(CHARSET));
            SecretKeyFactory keyFactory = SecretKeyFactory
                    .getInstance(ENCRYPT_TYPE);
            SecretKey secretKey = keyFactory.generateSecret(desKeySpec);
            IvParameterSpec iv = new IvParameterSpec(keyStr.getBytes(CHARSET));
            cipher.init(Cipher.DECRYPT_MODE, secretKey, iv);
            bis = new ByteArrayInputStream(obytes);
            bos = new ByteArrayOutputStream();
            cos = new CipherOutputStream(bos, cipher);
            byte[] buffer = new byte[1024];
            int r;
            while ((r = bis.read(buffer)) >= 0) {
                cos.write(buffer, 0, r);
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        finally {
            if (cos != null) {
                try {
                    cos.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bos != null) {
                try {
                    bos.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bis != null) {
                try {
                    bis.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        bytes = bos.toByteArray();
        return bytes;
    }

    public static byte[] covertToBytes(String filePath) {
        byte[] bytes = null;
        InputStream is = null;
        ByteArrayOutputStream bos = null;
        try {
            is = new FileInputStream(filePath);
            bos = new ByteArrayOutputStream();
            byte[] b = new byte[1024];
            int n;
            while ((n = is.read(b)) != -1) {
                bos.write(b, 0, n);
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        finally {
            if (bos != null) {
                try {
                    bos.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (is != null) {
                try {
                    is.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        bytes = bos.toByteArray();
        return bytes;
    }

    public static void covertToFile(byte[] obytes, String destFilePath) {
        ByteArrayInputStream bis = null;
        OutputStream os = null;
        try {
            bis = new ByteArrayInputStream(obytes);
            os = new FileOutputStream(destFilePath);
            byte[] b = new byte[1024];
            int n;
            while ((n = bis.read(b)) != -1) {
                os.write(b, 0, n);
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        finally {
            if (os != null) {
                try {
                    os.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (bis != null) {
                try {
                    bis.close();
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    
    
    // 解压缩   
    public static String uncompress(String str) throws IOException {   
       if (str == null || str.length() == 0) {   
         return str;   
     }   
      ByteArrayOutputStream out = new ByteArrayOutputStream();   
      ByteArrayInputStream in = new ByteArrayInputStream(str   
           .getBytes("ISO-8859-1"));   
       GZIPInputStream gunzip = new GZIPInputStream(in);   
       byte[] buffer = new byte[256];   
       int n;   
      while ((n = gunzip.read(buffer))>= 0) {   
       out.write(buffer, 0, n);   
       }   
       // toString()使用平台默认编码，也可以显式的指定如toString(&quot;GBK&quot;)   
       return out.toString();   
     }   
    
 // 压缩   
    public static String compress(String str) throws IOException {   
       if (str == null || str.length() == 0) {   
        return str;   
      }   
       ByteArrayOutputStream out = new ByteArrayOutputStream();   
      GZIPOutputStream gzip = new GZIPOutputStream(out);   
       gzip.write(str.getBytes());   
       gzip.close();   
      return out.toString("ISO-8859-1");   
     }   
    
    public static void main(String[] args) throws Exception {
    	 //测试字符串   
//        String str="1000004,1000005,1000026,1000028,1000029,1000030,1000034,1000035,1000036,1000037,1000044,1000045,1000046,1000048,1000049,1000050,1000051,1000052,1000053,1000054,1000081,1000098,1000100,1000105,1000106,1000108,1000109,1000111,1000115,1000117,1000118,1000123,1000125,1000127,1000130,1000131,1000132,1000134,1000135,1000136,1000137,1000138,1000140,1000142,1000144,1000148,1000149,1000152,1000153,1000154,1000155,1000156,1000157,1000158,1000159,1000160,1000161,1000167,1000168,1000169,1000170,1000206,1000221,1000222,1000224,1000225,1000226,1000227,1000228,1000229,1000230,1000231,1000233,1000234,1000235,1000236,1000239,1000242,1000245,1000246,1000247,1000250,1000251,1000262,1000264,1000265,1000266,1000267,1000269,1000270,1000271,1000272,1000274,1000275,1000282,1000283,1000284,1000287,1000289,1000290,1000291,1000292,1000293,1000294,1000295,1000297,1000298,1000299,1000300,1000301,1000303,1000305,1000307,1000309,1000311,1000312,1000313,1000319,1000320,1000332,1000333,1000334,1000335,1000348,1000351,1000352,1000353,1000362,1000363,1000364,1000365,1000388,1000389,1000392,1000394,1000399,1000400,1000402,1000404,1000405,1000407,1000408,1000411,1000413,1000414,1000422,1000428,1000431,1000436,1000439,1000442,1000447,1000448,1000449,1000450,1000451,1000452,1000457,1000458,1000467,1000472,1000479,1000480,1000481,1000482,1000483,1000487,1000488,1000490,1000491,1000492,1000493,1000494,1000495,1000496,1000503,1000504,1000506,1000507,1000509,1000511,1000512,1000513,1000520,1000521,1000522,1000523,1000524,1000525,1000529,1000530,1000531,1000532,1000533,1000534,1000538,1000539,1000540,1000541,1000648,1001345,1001549,1001613,1002017,1002047,1002050,1002404,1002415,1002841,1003098,1003232,1003524,1003526,1003528,1003529,1003530,1003535,1003536,1003537,1003538,1003539,1003540,1003549,1003550,1003551,1003552,1003553,1003554,1003555,1003556,1003558,1003560,1003561,1003562,1003569,1003597,1003599,1003602,1003603,1003604,1003605,1003610,1003611,1003612,1003613,1003614,1003615,1003616,1003617,1003618,1003619,1003622,1003623,1003625,1003626,1003627,1003628,1003629,1003630,1003631,1003632,1003635,1003647,1003650,1003651,1003652,1003656,1003658,1003660,1003662,1003663,1003669,1003670,1003673,1003674,1003678,1003679,1003680,1003681,1003682,1003687,1003688,1003689,1003692,1003693,1003696,1003699,1003700,1003701,1003703,1003704,1003710,1003712,1003715,1003723,1003724,1003725,1003726,1003728,1003730,1003752,1003753,1003754,1003755,1003757,1003761,1003763,1003766,1003768,1003771,1003772,1003773,1003775,1003776,1003778,1003779,1003780,1003781,1003788,1003789,1003790,1003792,1003793,1003794,1003795,1003798,1003799,1003800,1003801,1003802,1003803,1003804,1003806,1003807,1003808,1003809,1003811,1003812,1003813,1003816,1003817,1003818,1003819,1003820,1003821,1003822,1003823,1003824,1003825,1003828,1003829,1003830,1003831,1003832,1003835,1003842,1003843,1003848,1003849,1003850,1003851,1003852,1003853,1003885,1003886,1003887,1003888,1003889,1003890,1003891,1003892,1003893,1003894,1003897,1003898,1003899,1003900,1003901,1003902,1003909,1003910,1003911,1003912,1003913,1003915,1003916,1003917,1003918,1003919,1003922,1003923,1003924,1003925,1003926,1003927,1003928,1003929,1003930,1003931,1003932,1003933,1003934,1003944,1003945,1003946,1003947,1003948,1003949,1003950,1003951,1003952,1003967,1003968,1003969,1003970,1003971,1003972,1003973,1003974,1003976,1003977,1003980,1003982,1003987,1003988,1003993,1003994,1003995,1004012,1004013,1004017,1004021,1004026,1004027,1004029,1004030,1004031,1004033,1004035,1004041,1004045,1004046,1004048,1004052,1004053,1004054,1004055,1004056,1004058,1004059,1004061,1004063,1004066,1004067,1004068,1004069,1004073,1004074,1004078,1004083,1004084,1004085,1004091,1004100,1004101,1004102,1004103,1004104,1004105,1004106,1004107,1004108,1004109,1004110,1004111,1004114,1004115,1004117,1004118,1004120,1004121,1004122,1004123,1004124,1004125,1004126,1004127,1004130,1004131,1004139,1004140,1004141,1004142,1004143,1004144,1004145,1004146,1004179,1004180,1004181,1004182,1004183,1004185,1004186,1004187,1004188,1004189,1004191,1004192,1004193,1004194,1004209,1004210,1004211,1004212,1004213,1004215,1004216,1004217,1004218,1004220,1004222,1004224,1004226,1004227,1004228,1004229,1004230,1004231,1004236,1004238,1004239,1004240,1004241,1004242,1004243,1004244,1004245,1004246,1004247,1004254,1004259,1004260,1004261,1004262,1004263,1004264,1004265,1004266,1004267,1004268,1004269,1004270,1004271,1004272,1004273,1004274,1004275,1004276,1004286,1004289,1004290,1004292,1004295,1004296,1004307,1004313,1004314,1004316,1004317,1004319,1004320,1004321,1004322,1004323,1004324,1004325,1004327,1004328,1004332,1004333,1004334,1004335,1004336,1004338,1004339,1004340,1004341,1004346,1004350,1004354,1004355,1004356,1004357,1004358,1004359,1004360,1004361,1004362,1004363,1004365,1004367,1004368,1004372,1004390,1004391,1004401,1004402,1004407,1004408,1004410,1004411,1004412,1004413,1004414,1004416,1004419,1004421,1004422,1004423,1004427,1004432,1004433,1004435,1004437,1004441,1004446,1004450,1004451,1004452,1004453,1004454,1004456,1004458,1004462,1004463,1004464,1004465,1004466,1004467,1004468,1004469,1004470,1004471,1004472,1004473,1004474,1004614,1005597,1005598,1005599,1005600,1005601,1005602,1005603,1005604,1005605,1005606,1005607,1005608,1005609,1005610,1005611,1005612,1005613,1005614,1005615,1005616,1005617,1005618,1005619,1005620,1005621,1005622,1005623,1005624,1005625,1005626,1005627,1005628,1005629,1005630,1005631,1005632,1005633,1005634,1005635,1005636,1005637,1005638,1005639,1005640,1005641,1005642,1005643,1005644,1005645,1005646,1005647,1005648,1005649,1005650,1005651,1005652,1005653,1005655,1005656,1005657,1005658,1005659,1005660,1005661,1005662,1005664,1005665,1005666,1005667,1005668,1005669,1005670,1005671,1005672,1005673,1005674,1005675,1005676,1005677,1005678,1005679,1005680,1005681,1005682,1005683,1005684,1005685,1005686,1005687,1005688,1005689,1005690,1005691,1005698,1005699,1005700,1005701,1005702,1005703,1005704,1005705,1005706,1005707,1005708,1005709,1005710,1005711,1005712,1005713,1005714,1005715,1005716,1005717,1005718,1005720,1005721,1005722,1005723,1005724,1005725,1005726,1005727,1005728,1005729,1005730,1005731,1005732,1005733,1005734,1005735,1005736,1005737,1005738,1005739,1005740,1005741,1005742,1005743,1005744,1005745,1005746,1005747,1005748,1005749,1005750,1005751,1005752,1005753,1005754,1005755,1005756,1005757,1005758,1005759,1005760,1005761,1005762,1005763,1005764,1005765,1005766,1005767,1005768,1005769,1005771,1005772,1005773,1005774,1005775,1005776,1005777,1005778,1005779,1005780,1005781,1005782,1005783,1005784,1005785,1005786,1005787,1005788,1005789,1005790,1005791,1005792,1005793,1005794,1005795,1005796,1005797,1005798,1005799,1005800,1005801,1005802,1005803,1005804,1005805,1005806,1005807,1005808,1005809,1005810,1005811,1005812,1005813,1005814,1005815,1005816,1005817,1005818,1005819,1005820,1005821,1005822,1005823,1005824,1005825,1005826,1005827,1005828,1005829,1005830,1005831,1005832,1005833,1005834,1005835,1005836,1005837,1005838,1005839,1005840,1005841,1005842,1005843,1005844,1005845,1005846,1005847,1005848,1005849,1005850,1005851,1005852,1005853,1005854,1005855,1005856,1005857,1005858,1005859,1005860,1005861,1005862,1005863,1005864,1005865,1005866,1005867,1005868,1005869,1005870,1005871,1005872,1005873,1005874,1005875,1005876,1005877,1005878,1005879,1005880,1005881,1005882,1005883,1005884,1005885,1005886,1005887,1005888,1005889,1005890,1005891,1005892,1005893,1005894,1005895,1005896,1005897,1005898,1005899,1005900,1005901,1005902,1005903,1005904,1005905,1005906,1005907,1005908,1005909,1005910,1005911,1005912,1005913,1005914,1005915,1005916,1005917,1005918,1005919,1005920,1005921,1005922,1005923,1005924,1005925,1005927,1005928,1005929,1005930,1005931,1005932,1005933,1005934,1005935,1005936,1005937,1005938,1005939,1005940,1005941,1005942,1005943,1005944,1005945,1005946,1005947,1005948,1005949,1005950,1005951,1005952,1005953,1005954,1005955,1005956,1005957,1005958,1005959,1005960,1005961,1005962,1005963,1005964,1005965,1005966,1005967,1005968,1005969,1005971,1005972,1005973,1005974,1005975,1005976,1005977,1005978,1005979,1005980,1005981,1005982,1005983,1005984,1005985,1005986,1005987,1005988,1005989,1005990,1005991,1005992,1005993,1005994,1005995,1005996,1005997,1005998,1005999,1006002,1006003,1006004,1006005,1006006,1006007,1006008,1006009,1006010,1006011,1006012,1006013,1006014,1006015,1006016,1006017,1006018,1006019,1006020,1006021,1006022,1006023,1006024,1006025,1006026,1006027,1006028,1006029,1006030,1006031,1006032,1006033,1006034,1006035,1006036,1006038,1006039,1006040,1006041,1006042,1006043,1006044,1006045,1006046,1006047,1006048,1006049,1006050,1006051,1006052,1006053,1006054,1006055,1006056,1006057,1006058,1006059,1006060,1006061,1006062,1006063,1006064,1006065,1006066,1006067,1006068,1006069,1006070,1006071,1006072,1006073,1006075,1006076,1006077,1006078,1006079,1006080,1006081,1006082,1006083,1006084,1006085,1006086,1006087,1006088,1006089,1006090,1006091,1006092,1006093,1006094,1006095,1006096,1006097,1006098,1006099,1006100,1006101,1006102,1006103,1006104,1006105,1006106,1006107,1006108,1006109,1006110,1006111,1006112,1006113,1006114,1006115,1006116,1006117,1006118,1006119,1006120,1006121,1006122,1006123,1006124,1006125,1006126,1006249,1006250,1006267,1006269,1006291,1006293,1006306,1006419,1006420,1006435,1006436,1006476,1006503,1006511,1006526,1006527,1006535,1006540,1006542,1006644,1006692,1006694,1006729,1006784,1006785,1006905,1006924,1007036,1007040,1007042,1007072,1007454,1007905,1007906,1007947,1008268,1008864,1008992,1009073,1009108,1009194,1009219,1009560,1009928,1010098,1010135,1010312,1010410,1010411,1010463,1010476,1013046,1013779,1013812,1016140,1016471,1016505,1016768,1017284,1018147,1300001,1300002,1300003,1300004,1300005,1300007,1300008,1300009,1300010,1300011,1300012,1300013,1300014,1300015,1300016,1300017,1300019,1300020,1300021,1300022,1300025,1300026,1300027,1300028,1300029,1300030,1300031,1300032,1300033,1300034,1300035,1300036,1300037,1300038,1300040,1300041,1300042,1300044,1300045,1300046,1300047,1300048,1300049,1300050,1300051,1300052,1300053,1300054,1300055,1300056,1300057,1300058,1300059,1300060,1300061,1300062,1300063,1300064,1300065,1300066,1300067,1300068,1300069,1300070,1300071,1300072,1300073,1300074,1300075,1300076,1300077,1300078,1300079,1300080,1300081,1300082,1300083,1300084,1300085,1300086,1300087,1300088,1300089,1300090,1300091,1300092,1300093,1300094,1301682,1301783,1301867,1301868,1301869,1301870,1301871,1301872,1301873,1301874,1301875,1301876,1301877,1301878,1301879,1301880,1301881,1301882,1301883,1301884,1301885,1301886,1301887,1301888,1301889,1301890,1301891,1301892,1301893,1301894,1301895,1301896,1301898,1301899,1301900,1301901,1301902,1301903,1301904,1301905,1301906,1301907,1301908,1301909,1301910,1301911,1301912,1301913,1301914,1301915,1301916,1301917,1301918,1301919,1301920,1301921,1301922,1301923,1301924,1301925,1301926,1301927,1301928,1301929,1301930,1301931,1301932,1301933,1301934,1301935,1301936,1301937,1301938,1301939,1301940,1301941,1301942,1301943,1301944,1301945,1301946,1301947,1301948,1301949,1301950,1301952,1301953,1301954,1301955,1301956,1301957,1301958,1301959,1301960,1301961,1301962,1301963,1301964,1301965,1301966,1301967,1301968,1301969,1301971,1301972,1301973,1301974,1301975,1301976,1301977,1301978,1301979,1301980,1301981,1301982,1301983,1301984,1301985,1301986,1301987,1301988,1301989,1301990,1301991,1301992,1301993,1301994,1301995,1301996,1301997,1301998,1301999,1302000,1302001,1302002,1302003,1302004,1302005,1302006,1302007,1302008,1302009,1302010,1302011,1302012,1302013,1302014,1302015,1302016,1302017,1302018,1302019,1302020,1302021,1302022,1302023,1302024,1302025,1302026,1302027,1302028,1302029,1302030,1302031,1302032,1302033,1302034,1302035,1302036,1302037,1302038,1302039,1302040,1302041,1302042,1302043,1302045,1302046,1302047,1302048,1302049,1302050,1302051,1302052,1302053,1302054,1302055,1302056,1302057,1302058,1302059,1302060,1302062,1302063,1302064,1302065,1302074,1302075,1302076,1302077,1302078,1302079,1302080,1302081,1302082,1302083,1302084,1302085,1302086,1302087,1302088,1302089,1302090,1302091,1302092,1302348,1303198,1303199,1303419,1303425,1303426,1303428,1303430,1303431,1303432,1303433,1303434,1303435,1303437,1303438,1303440,1303441,1303442,1303443,1303444,1303445,1303446,1303447,1303448,1303450,1303451,1303452,1303454,1303455,1303456,1303457,1303458,1303459,1303460,1303461,1303462,1303463,1303464,1303465,1303466,1303467,1303468,1303469,1303470,1303471,1303472,1303473,1303474,1303475,1303476,1303477,1303478,1303479,1303480,1303481,1303482,1303483,1303484,1303485,1303486,1303487,1303488,1303489,1303490,1303491,1303492,1303494,1303495,1303496,1303497,1303498,1303499,1303500,1303501,1303502,1303503,1303504,1303505,1303506,1303507,1303508,1303512,1303514,1303515,1303516,1303518,1303519,1303520,1303521,1303522,1303523,1303524,1303525,1303526,1303527,1303528,1303529,1303530,1303531,1303532,1303533,1303534,1303535,1303536,1303537,1303538,1303539,1303540,1303541,1303542,1303543,1303546,1303547,1303548,1303549,1303553,1303556,1303558,1303560,1303561,1303562,1303563,1303565,1303566,1303568,1303569,1303571,1303572,1303573,1303574,1303575,1303576,1303577,1303578,1303579,1303580,1303581,1303582,1303587,1303588,1303589,1303590,1303592,1303593,1303594,1303595,1303596,1303597,1303600,1303604,1303605,1303606,1303607,1303608,1303609,1303610,1303611,1303612,1303613,1303614,1303615,1303616,1303617,1303618,1303619,1303620,1303621,1303622,1303623,1303624,1303625,1303626,1303627,1303628,1303629,1303630,1303631,1303632,1303633,1303634,1303635,1303636,1303637,1303638,1303639,1303640,1303641,1303642,1303643,1303644,1303645,1303646,1303647,1303648,1303649,1303650,1303651,1303652,1303653,1303656,1303659,1303661,1303662,1303663,1303664,1303665,1303666,1303667,1303668,1303669,1303670,1303672,1303674,1303675,1303676,1303677,1303678,1303679,1303680,1303681,1303682,1303683,1303684,1303685,1303687,1303688,1303689,1303690,1303691,1303692,1303693,1303694,1303695,1303696,1303697,1303698,1303699,1303700,1303701,1303702,1303703,1303704,1303705,1303706,1303708,1303709,1303710,1303711,1303712,1303713,1303714,1303715,1303716,1303717,1303718,1303719,1303720,1303721,1303722,1303723,1303724,1303725,1303726,1303727,1303728,1303729,1303730,1303731,1303732,1303733,1303734,1303735,1303736,1303751,1303752,1303755,1303756,1303757,1303758,1303759,1303760,1303761,1303762,1303763,1303764,1303765,1303766,1303767,1303768,1303769,1303770,1303771,1303772,1303773,1303774,1303775,1303776,1303777,1303778,1303779,1303780,1303785,1303790,1303791,1303792,1303793,1303794,1303795,1303796,1303797,1303798,1303799,1303800,1303801,1303802,1303803,1303804,1303805,1303806,1303807,1303808,1303809,1303810,1303812,1303813,1303814,1303815,1303816,1303817,1303818,1303819,1303820,1303821,1303822,1303823,1303824,1303825,1303826,1303827,1303828,1303829,1303830,1303831,1303832,1303833,1303834,1303835,1303836,1303837,1303838,1303839,1303840,1303841,1303842,1303843,1303844,1303845,1303846,1303847,1303848,1303849,1303850,1303851,1303852,1303855,1303856,1303857,1303859,1303884,1303885,1303886,1303887,1303888,1303889,1303890,1303891,1303892,1303893,1303894,1303895,1303896,1303897,1303898,1303899,1303900,1303901,1303902,1303903,1303904,1303905,1303906,1303907,1303908,1303909,1303911,1303912,1303913,1303914,1303915,1303920,1303921,1303922,1303923,1303924,1303925,1303927,1303928,1303929,1303930,1303931,1303932,1303933,1303934,1303935,1303936,1303937,1303938,1303939,1303940,1303941,1303942,1303943,1303944,1303945,1303946,1303947,1303948,1303949,1303950,1303951,1303952,1303955,1303956,1303957,1303958,1303959,1303960,1303961,1303962,1303963,1303964,1303965,1303966,1303967,1303968,1303969,1303970,1303971,1303972,1303973,1303974,1303975,1303976,1303977,1303978,1303979,1303980,1303981,1303983,1303984,1303985,1303986,1303987,1303988,1303989,1303990,1303991,1303992,1303993,1303994,1303995,1303996,1303997,1303998,1303999,1304000,1304001,1304002,1304003,1304009,1304011,1304012,1304013,1304014,1304015,1304016,1304017,1304018,1304019,1304020,1304021,1304022,1304023,1304024,1304025,1304026,1304027,1304028,1304029,1304030,1304031,1304032,1304033,1304034,1304035,1304036,1304037,1304038,1304039,1304040,1304041,1304042,1304043,1304044,1304045,1304046,1304047,1304048,1304049,1304050,1304051,1304052,1304053,1304054,1304055,1304057,1304059,1304060,1304061,1304063,1304064,1304065,1304066,1304067,1304068,1304069,1304070,1304071,1304072,1304073,1304074,1304075,1304076,1304077,1304078,1304080,1304081,1304082,1304083,1304084,1304085,1304095,1304096,1304097,1304098,1304099,1304100,1304101,1304103,1304105,1304107,1304108,1304111,1304112,1304113,1304115,1304116,1304117,1304118,1304119,1304120,1304122,1304123,1304124,1304125,1304126,1304127,1304128,1304129,1304130,1304131,1304132,1304133,1304134,1304136,1304137,1304138,1304139,1304140,1304141,1304143,1304146,1304148,1304149,1304151,1304152,1304154,1304155,1304156,1304158,1304159,1304160,1304161,1304162,1304163,1304164,1304165,1304167,1304169,1304172,1304174,1304177,1304180,1304181,1304184,1304190,1304192,1304194,1304198,1304199,1304200,1304201,1304203,1304205,1304211,1304216,1304217,1304218,1304219,1304220,1304221,1304222,1304223,1304224,1304225,1304226,1304228,1304229,1304231,1304233,1304234,1304236,1304237,1304238,1304241,1304242,1304244,1304245,1304246,1304247,1304248,1304249,1304250,1304258,1304260,1304261,1304262,1304263,1304264,1304265,1304266,1304267,1304268,1304269,1304270,1304271,1304272,1304275,1304276,1304277,1304278,1304281,1304282,1304283,1304284,1304285,1304286,1304287,1304288,1304289,1304290,1304291,1304292,1304293,1304294,1304295,1304296,1304297,1304299,1304300,1304301,1304302,1304303,1304304,1304305,1304306,1304308,1304309,1304310,1304311,1304312,1304313,1304314,1304315,1304317,1304324,1304325,1304326,1304327,1304328,1304329,1304332,1304333,1304334,1304335,1304336,1304337,1304338,1304339,1304340,1304341,1304342,1304343,1304344,1304345,1304346,1304348,1304349,1304350,1304352,1304353,1304354,1304355,1304356,1304357,1304359,1304360,1304361,1304362,1304363,1304364,1304367,1304369,1304370,1304372,1304373,1304376,1304378,1304379,1304380,1304381,1304382,1304384,1304385,1304386,1304387,1304390,1304391,1304392,1304393,1304394,1304396,1304397,1304398,1304399,1304400,1304401,1304402,1304403,1304404,1304405,1304406,1304407,1304408,1304409,1304410,1304411,1304413,1304414,1304415,1304416,1304417,1304418,1304420,1304421,1304422,1304423,1304424,1304425,1304426,1304427,1304429,1304432,1304434,1304435,1304436,1304437,1304438,1304439,1304440,1304441,1304442,1304443,1304444,1304445,1304446,1304447,1304448,1304449,1304450,1304451,1304452,1304453,1304454,1304455,1304456,1304457,1304458,1304481,1304484,1304486,1304487,1304488,1304489,1304498,1304501,1304502,1304503,1304504,1304505,1304509,1304511,1304512,1304514,1304516,1304517,1304518,1304519,1304520,1304521,1304522,1304523,1304525,1304526,1304527,1304529,1304530,1304531,1304532,1304533,1304534,1304535,1304536,1304537,1304538,1304539,1304540,1304541,1304542,1304543,1304544,1304545,1304546,1304547,1304548,1304549,1304550,1304551,1304552,1304553,1304554,1304555,1304559,1304560,1304561,1304562,1304563,1304564,1304565,1304567,1304568,1304569,1304570,1304571,1304572,1304573,1304574,1304575,1304576,1304577,1304579,1304580,1304581,1304584,1304585,1304586,1304587,1304588,1304589,1304590,1304591,1304592,1304593,1304594,1304595,1304596,1304597,1304598,1304599,1304600,1304601,1304602,1304603,1304605,1304606,1304607,1304608,1304609,1304610,1304611,1304612,1304614,1304615,1304616,1304617,1304618,1304619,1304620,1304621,1304622,1304623,1304624,1304625,1304626,1304627,1304628,1304629,1304630,1304632,1304633,1304634,1304635,1304636,1304637,1304638,1304639,1304640,1304641,1304642,1304643,1304644,1304645,1304646,1304647,1304648,1304649,1304650,1304651,1304652,1304653,1304654,1304655,1304656,1304657,1304658,1304659,1304660,1304661,1304662,1304663,1304664,1304665,1304666,1304667,1304668,1304669,1304670,1304671,1304672,1304673,1304674,1304675,1304676,1304677,1304678,1304679,1304680,1304681,1304682,1304683,1304684,1304685,1304686,1304687,1304688,1304689,1304690,1304691,1304692,1304693,1304694,1304695,1304696,1304697,1304698,1304699,1304700,1304701,1304702,1304703,1304704,1304705,1304706,1304707,1304708,1304709,1304710,1304711,1304712,1304713,1304714,1304715,1304716,1304717,1304718,1304719,1304720,1304721,1304722,1304723,1304728,1304729,1304730,1304731,1304732,1304733,1304734,1304735,1304736,1304737,1304738,1304739,1304740,1304741,1304742,1304743,1304744,1304745,1304746,1304747,1304748,1304749,1304750,1304751,1304752,1304753,1304754,1304755,1304756,1304757,1304758,1304759,1304760,1304761,1304762,1304763,1304764,1304765,1304766,1304767,1304768,1304769,1304770,1304771,1304772,1304773,1304774,1304775,1304776,1304777,1304778,1304779,1304780,1304781,1304782,1304783,1304784,1304785,1304786,1304787,1304788,1304789,1304790,1304791,1304792,1304793,1304794,1304795,1304796,1304797,1304799,1304800,1304801,1304802,1304803,1304804,1304805,1304806,1304807,1304808,1304809,1304810,1304811,1304812,1304813,1304814,1304815,1304816,1304817,1304818,1304819,1304820,1304822,1304824,1304825,1304826,1304827,1304828,1304829,1304830,1304831,1304832,1304833,1304834,1304835,1304836,1304837,1304838,1304839,1304840,1304841,1304842,1304843,1304844,1304845,1304846,1304847,1304848,1304849,1304851,1304853,1304854,1304855,1304856,1304857,1304858,1304859,1304860,1304861,1304862,1304863,1304866,1304867,1304868,1304869,1304870,1304871,1304872,1304873,1304874,1304875,1304876,1304877,1304878,1304881,1304882,1304883,1304884,1304886,1304887,1304889,1304890,1304891,1304892,1304893,1304895,1304896,1304898,1304899,1304901,1304902,1304903,1304904,1304905,1304906,1304907,1304908,1304909,1304910,1304913,1304914,1304916,1304919,1304920,1304921,1304922,1304924,1304927,1304928,1304929,1304930,1304931,1304932,1304933,1304934,1304935,1304936,1304937,1304938,1304939,1304940,1304941,1304942,1304943,1304944,1304945,1304946,1304947,1304948,1304951,1304952,1304953,1304956,1304957,1304960,1304963,1304964,1304965,1304966,1304967,1304968,1304971,1304972,1304973,1304974,1304975,1304976,1304977,1304980,1304981,1304983,1304984,1304987,1304988,1304989,1304990,1304991,1304992,1304993,1304994,1304996,1304997,1304998,1305000,1305001,1305002,1305003,1305004,1305005,1305006,1305007,1305008,1305009,1305010,1305011,1305012,1305013,1305014,1305015,1305016,1305017,1305018,1305019,1305020,1305021,1305022,1305023,1305024,1305025,1305026,1305027,1305028,1305032,1305033,1305034,1305035,1305036,1305037,1305040,1305041,1305042,1305044,1305045,1305046,1305047,1305048,1305049,1305050,1305051,1305052,1305054,1305055,1305056,1305057,1305058,1305059,1305060,1305062,1305063,1305064,1305065,1305066,1305067,1305068,1305069,1305070,1305071,1305072,1305073,1305074,1305075,1305076,1305077,1305078,1305079,1305082,1305083,1305084,1305085,1305086,1305087,1305088,1305089,1305090,1305091,1305092,1305093,1305095,1305097,1305098,1305099,1305101,1305102,1305104,1305105,1305106,1305107,1305108,1305109,1305110,1305111,1305112,1305113,1305114,1305115,1305116,1305117,1305118,1305119,1305120,1305121,1305122,1305123,1305124,1305125,1305126,1305127,1305128,1305129,1305131,1305132,1305133,1305136,1305137,1305138,1305139,1305140,1305141,1305142,1305143,1305144,1305145,1305146,1305147,1305150,1305151,1305152,1305154,1305155,1305156,1305157,1305158,1305159,1305160,1305161,1305162,1305163,1305164,1305165,1305166,1305167,1305168,1305169,1305170,1305171,1305172,1305173,1305174,1305175,1305176,1305177,1305178,1305179,1305180,1305181,1305182,1305183,1305184,1305186,1305187,1305188,1305190,1305191,1305192,1305193,1305195,1305196,1305198,1305199,1305202,1305203,1305204,1305205,1305206,1305207,1305208,1305209,1305210,1305211,1305212,1305213,1305214,1305215,1305216,1305217,1305218,1305219,1305220,1305221,1305222,1305223,1305224,1305225,1305226,1305227,1305228,1305229,1305230,1305231,1305232,1305233,1305234,1305235,1305236,1305237,1305238,1305239,1305240,1305241,1305242,1305243,1305244,1305245,1305246,1305247,1305248,1305249,1305250,1305251,1305252,1305253,1305254,1305255,1305256,1305257,1305258,1305259,1305260,1305261,1305262,1305263,1305264,1305265,1305266,1305267,1305268,1305269,1305270,1305271,1305272,1305273,1305274,1305275,1305276,1305277,1305278,1305279,1305280,1305281,1305282,1305283,1305284,1305285,1305286,1305287,1305288,1305289,1305290,1305291,1305292,1305293,1305294,1305295,1305296,1305297,1305298,1305299,1305300,1305301,1305302,1305303,1305304,1305305,1305306,1305307,1305308,1305309,1305310,1305311,1305312,1305313,1305314,1305315,1305316,1305317,1305318,1305319,1305320,1305321,1305322,1305323,1305324,1305325,1305326,1305327,1305328,1305329,1305330,1305331,1305332,1305333,1305334,1305335,1305336,1305337,1305338,1305339,1305340,1305341,1305342,1305343,1305344,1305345,1305346,1305347,1305348,1305349,1305350,1305351,1305352,1305353,1305354,1305355,1305356,1305357,1305358,1305359,1305360,1305361,1305362,1305363,1305364,1305365,1305366,1305367,1305368,1305369,1305370,1305371,1305372,1305373,1305374,1305375,1305376,1305377,1305378,1305379,1305380,1305381,1305382,1305383,1305384,1305385,1305386,1305387,1305388,1305389,1305390,1305391,1305392,1305393,1305394,1305395,1305396,1305397,1305398,1305399,1305400,1305401,1305402,1305403,1305404,1305405,1305406,1305407,1305408,1305409,1305410,1305411,1305412,1305413,1305414,1305415,1305416,1305417,1305418,1305419,1305420,1305421,1305422,1305423,1305424,1305425,1305426,1305427,1305428,1305429,1305430,1305431,1305432,1305433,1305434,1305435,1305436,1305437,1305438,1305439,1305440,1305441,1305442,1305443,1305444,1305445,1305446,1305447,1305448,1305449,1305450,1305451,1305452,1305453,1305454,1305455,1305456,1305457,1305458,1305459,1305460,1305461,1305462,1305463,1305464,1305465,1305466,1305467,1305468,1305469,1305470,1305473,1305474,1305477,1305478,1305479,1305480,1305481,1305482,1305483,1305484,1305485,1305486,1305487,1305488,1305489,1305490,1305491,1305492,1305493,1305494,1305495,1305496,1305497,1305498,1305499,1305500,1305501,1305502,1305503,1305504,1305505,1305506,1305507,1305508,1305509,1305513,1305514,1305515,1305516,1305517,1305518,1305519,1305520,1305521,1305522,1305524,1305525,1305526,1305527,1305528,1305529,1305531,1305532,1305534,1305536,1305537,1305539,1305540,1305541,1305547,1305549,1305550,1305551,1305552,1305553,1305554,1305555,1305556,1305563,1305565,1305574,1305575,1305576,1305577,1305578,1305579,1305580,1305581,1305582,1305583,1305584,1305586,1305588,1305590,1305592,1305596,1305597,1305600,1305601,1305602,1305659,1306541,1306606,1306635,1306655,1306656,1306657,1306658,1306659,1306660,1306661,1306674,1306684,1306685,1306686,1306687,1306688,1306704,1306705,1306706,1306707,1306708,1306709,1306710,1306711,1306725,1306737,1306744,1306745,1306835,1306844,1306859,1306912,1307123,1307201,1307204,1307205,1307206,1307315,1307345,1307690,1307838,1307899,1307923,1308025,1308122,1308165,1308436,1308760,1308762,1308763,1310201,1310394,1310395,1310402,1310403,1310405,1310408,1310409,1310411,1310412,1310413,1310415,1310416,1310417,1310422,1310423,1310426,1310427,1310428,1310429,1310430,1310431,1310433,1310435,1310437,1310439,1310440,1310441,1310442,1310447,1310449,1310452,1310453,1310454,1310455,1310456,1310458,1310461,1310539,1310540,1310542,1310544,1310545,1310546,1310547,1310548,1310549,1310550,1310551,1310552,1310553,1310554,1310555,1310556,1310557,1310558,1310559,1310560,1310561,1310562,1310563,1310564,1310565,1310566,1310567,1310568,1310569,1310579,1310581,1310840,1310846,1311144,1311956,1312103,1317265,1317266,1317267,1317268,1317269,1317270,1317271,1317272,1317273,1317274,1317275,1317276,1317277,1317278,1317279,1317280,1317281,1317282,1317283,1317284,1317285,1317286,1317289,1317290,1317291,1317292,1317293,1317294,1317295,1317296,1317297,1317298,1317300,1317301,1317302,1317303,1317304,1317876,1317992,1322168,1322186,1322950,1322951,1324451,1324452,1324453,1327275,1327276,1327277,1327278,1327279,1327280,1327281,1327282,1327283,1327284,1327285,1327286,1327287,1327288,1327290,1327291,1327292,1327293,1327294,1327295,1327296,1327297,1327298,1327299,1327300,1327301,1327302,1327303,1327304,1327305,1327307,1327308,1327310,1327311,1327312,1327313,1327314,1327315,1327316,1327317,1327318,1327319,1327320,1327322,1327323,1327324,1327325,1327326,1327327,1327328,1327329,1327330,1327331,1327332,1327333,1327334,1327335,1327336,1327337,1327338,1327339,1327340,1327341,1327342,1327343,1327344,1327345,1327346,1327347,1327348,1327349,1327351,1327352,1327353,1327354,1327355,1327356,1327357,1327358,1327359,1327360,1327361,1327362,1327363,1327365,1327366,1327367,1327368,1327370,1327371,1327372,1327373,1327374,1327375,1327376,1327377,1327378,1327379,1327380,1327381,1327383,1327384,1327385,1327386,1327387,1327389,1327390,1327391,1327392,1327393,1327394,1327395,1327396,1327397,1327398,1328543,1328552,1328553,1328559,1328563,1328570,1328573,1328574,1328576,1328577,1328579,1328580,1328582,1328585,1328587,1328588,1328589,1328594,1328599,1328601,1328608,1328617,1328628,1328635,1328640,1328646,1328675,1328676,1328677,1328678,1328679,1328687,1328697,1328698,1328699,1328701,1328706,1328731,1328753,1328758,1328765,1328766,1328769,1328771,1328773,1328774,1328776,1328779,1328780,1328785,1328787,1328793,1328816,1328828,1328829,1328830,1328839,1328859,1328860,1328869,1328878,1328889,1328890,1328901,1328909,1328918,1329270,1329272,1329275,1329296,1329297,1329675,1329678,1329681,1329682,1329683,1329700,1331143,1331144,1331151,1331152,1331159,1331166,1331173,1331175,1331176,1331187,1331189,1331191,1331210,1331217,1331233,1331255,1331257,1331264,1331273,1331280,1331281,1331297,1331299,1331305,1331321,1331328,1331329,1331335,1331337,1331338,1331352,1331356,1331358,1331363,1331364,1331365,1331369,1331375,1331376,1331384,1331388,1331389,1331390,1331391,1331392,1331393,1331405,1331408,1331414,1331417,1331428,1331444,1331445,1331446,1331450,1331456,1331457,1331466,1331467,1331468,1331469,1331470,1331471,1332617,1332716,1332937,1332938,1332950,1332952,1332959,1332961,1332963,1332988,1333054,1333222,1333223,1333224,1333226,1333414,1333438,1333715,1334918,1334919,1338056,1338058,1338093,1338676,1338677,1340624,1340630,1340651,1340662,1340664,1340728,1342051,1342093,1343671,1343672,1343705,1343706,1343707,1343708,1343709,1343710,1343711,1343712,1343714,1343728,1343733,1343734,1343900,1343955,1344026,1344028,1344030,1344037,1344039,1344052,1344053,1344055,1344056,1344057,1344066,1344068,1344074,1344075,1344080,1344086,1344096,1344099,1344101,1344103,1344111,1344113,1344114,1344120,1344123,1344125,1344127,1344128,1344129,1344133,1344136,1344151,1344159,1344172,1344173,1344175,1344180,1344181,1344184,1344192,1344223,1344224,1344225,1344226,1344228,1344229,1344230,1344232,1344233,1344255,1344257,1344266,1344267,1344268,1344269,1344271,1344272,1344273,1344274,1344275,1344276,1344277,1344319,1344320,1344321,1344323,1344343,1344344,1344345,1344346,1344347,1344348,1344350,1344353,1344354,1344355,1344361,1344363,1344364,1344365,1344366,1344367,1344384,1344393,1344395,1344397,1344398,1344401,1344402,1344406,1344407,1344408,1344409,1344417,1344424,1344425,1344427,1344428,1344429,1344477,1344479,1997975,1998110,1998359,1998360,1998362,1998363,1998364,1998365,1998366,1998370,1998373,1998374,1998376,1998378,1998379,1998380,1998382,1998383,1998384,1998385,1998386,1998387,1998388,1998389,1998391,1998392,1998393,1998396,1998397,1998398,1998399,1998400,1998401,1998402,1998403,1998404,1998405,1998406,1998407,1998408,1998409,1998410,1998411,1998412,1998413,1998414,1998415,1998416,1998417,1998419,1998420,1998421,1998422,1998423,1998424,1998425,1998427,1998429,1998431,1998433,1998435,1998436,1998439,1998440,1998442,1998443,1998444,1998454,1998456,1998457,1998458,1998459,1998460,1998462,1998463,1998464,1998466,1998467,1998469,1998472,1998475,1998479,1998486,1998488,1998489,1998490,1998495,1998499,1998502,1998506,1998510,1998514,1998522,1998535,1998536,1998537,1998538,1998549,1998551,1998556,1998559,1998560,1998563,1998566,1998567,1998574,1998584,1998585,1998589,1998590,1998591,1998593,1998601,1998604,1998607,1998608,1998612,1998629,1998631,1998649,1998650,1998654,1998655,1998657,1998664,1998674,1998680,1998698,1998701,1998706,1998711,1998712,1998719,1998731,1998733,1998734,1998765,1999002,1999208,1999366,1999389,1999416,1999573,1999613,1999623,1999672,1999673,1999739,1999741,1999744,1999750,1999782,1999783,1999842,1999937,1999980";   
//            
//         System.out.println("原长度："+str.length());     
//            
//         System.out.println("压缩后："+DESUtil.compress(str).length());     
//            
//       System.out.println("解压缩："+DESUtil.uncompress(DESUtil.compress(str)));   
       
////    	String uuid =DESUtil.getUUID();
//    	String uuid="4af98525-1181-483d-9da9-1103f29b0ee9";
//    	System.out.println(uuid);
//    	String keyStr = DESUtil.parseUUID(uuid);
//    	byte[] obytes =FileUtils.readFileToByteArray(new File("C:\\1.txt"));
//    	
////    	byte[] obytes=fileStr.getBytes("UTF-8");
//    	
//    	byte[] compress = DESUtil.compress(obytes);//压缩
////    	byte[] encrypt = DESUtil.encrypt(compress, keyStr);//加密
//    	
//    	
////    	byte[] decrypt =DESUtil.decrypt(encrypt, keyStr);//解密
//    	
////    	byte[] decompress =DESUtil.decompress(decrypt);//解压
//    	
//    	String str2=new String(compress,"UTF-8");
////    	String str = Base64.encodeBase64String(compress);
//    	
////    	FileUtils.writeByteArrayToFile(new File("D:\\2.txt"), str2);
//    	FileUtils.writeStringToFile(new File("C:\\2.txt"), str2);
////    	FileUtils.writeStringToFile(new File("D:\\3.txt"), str);
//    	System.out.println("uuid  "+uuid);
//    	System.out.println("keystr  "+keyStr);
//    	System.out.println("compress"+compress);
//    	System.out.println(str2);
    	String d="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";
    	
    	String a =DESUtil.uncompress(d);
    	System.out.println("");
//    	byte[] decompress =DESUtil.decompress(d.getBytes("UTF-8"));
    	
    	
    	
//    	String str2=new String(decompress,"UTF-8");
//    	System.out.println(str2);
	}

}
